import request from '@/utils/request'

// 获取任务详情
export function getTaskInfo(id) {
  return request({
    url: `/system/task/${id}`,
    method: 'get'
  })
}

// 获取任务列表
export function getTaskList(params) {
  return request({
    url: '/system/task/list',
    method: 'get',
    params
  })
}

// 发布任务
export function addTask(data) {
  return request({
    url: '/system/task',
    method: 'post',
    data
  })
}

// 修改任务
export function updateTask(data) {
  return request({
    url: '/system/task',
    method: 'put',
    data
  })
}

// 删除任务
export function deleteTask(id) {
  return request({
    url: `/system/task/${id}`,
    method: 'delete'
  })
}

// 更新任务状态
export function updateTaskStatus(data) {
  return request({
    url: '/system/task/status',
    method: 'put',
    data
  })
}

export function generateImage(data) {
  return request({
    url: '/ai/generate-image',
    method: 'post',
    data
  })
}

// 获取用户收藏任务列表
export function getCollectTasks() {
  return request({
    url: '/system/task/star/list',
    method: 'get'
  })
}

// 任务报名
export function applyTask(taskId) {
  return request({
    url: `/system/task/apply/${taskId}`,
    method: 'post'
  })
}

// 获取用户已报名任务列表
export function getAppliedTasks() {
  return request({
    url: '/system/task/applied/list',
    method: 'get'
  })
}

// 取消报名
export function cancelApplyTask(taskId) {
  return request({
    url: `/system/task/apply/${taskId}`,
    method: 'delete'
  })
}

// 获取用户相关的任务统计
export function getTaskStats() {
  return request({
    url: '/system/task/stats',
    method: 'get'
  })
}

// 获取关注用户发布的任务列表
export function getFollowedUserTasks() {
    return request({
        url: '/system/task/follow/list',
        method: 'get'
    });
}